package com.education.ai.dao;

import com.education.ai.entity.StudentPracticeSession;
import java.util.List;

/**
 * 学生练习会话DAO接口
 */
public interface StudentPracticeSessionDao {
    
    /**
     * 保存学生练习会话
     */
    StudentPracticeSession save(StudentPracticeSession session);
    
    /**
     * 根据ID查找
     */
    StudentPracticeSession findById(Long id);
    
    /**
     * 根据学生ID查找所有会话
     */
    List<StudentPracticeSession> findByStudentId(String studentId);
    
    /**
     * 根据学生ID和学科查找会话
     */
    List<StudentPracticeSession> findByStudentIdAndSubject(String studentId, String subject);
    
    /**
     * 查找学生最近的练习会话
     */
    List<StudentPracticeSession> findRecentByStudentId(String studentId, int limit);
    
    /**
     * 删除会话
     */
    void deleteById(Long id);
    
    /**
     * 批量保存会话
     */
    List<StudentPracticeSession> saveAll(List<StudentPracticeSession> sessions);
} 